<?php
require_once '../Generique/header_complet.php';


$_SESSION['taille_captcha'] = 5;

//traitement du formulaire de r�initialisation de mot de passe
if(isset($_POST['pseudo'], $_POST['mail'], $_POST['captcha'], $_POST['confirme'], $_SESSION['captcha']) )
{
	if(empty($_POST['pseudo']) || empty($_POST['mail']) || empty($_POST['captcha'])  )
	echo "Veuillez remplir tous les champs";

	else if ($_SESSION['captcha'] != $_POST['captcha'])
	echo "Le mot n'a pas &eacute;t&eacute; bien recopi&eacute;";

	else
	{
		$bdd = ouvrirBase();
		require_once "../Securite/parser_chaines.php";
			
		$_POST['pseudo'] = securite_chaine( $_POST['pseudo'] );
		$_POST['mail'] = securite_chaine( $_POST['mail'] );
			
		$req = $bdd->prepare('SELECT COUNT(*) FROM dil_comptes WHERE pseudo = :id AND mail = :mail');
		$req->bindValue('id', $_POST['pseudo'], PDO::PARAM_STR);
		$req->bindValue('mail', $_POST['mail'], PDO::PARAM_STR);
		$req->execute();
		$result = $req->fetch();
		if($result['COUNT(*)']<1)
		echo "Aucun compte correspondant n'est enregistr&eacute;.
				<br /> V&eacute;rifiez que vous avez bien &eacute;crit votre pseudo et que l'adresse mail est celle fournie lors de votre inscription";

		else
		{
			// mot de passe al�atoire constitu� de 12 lettres et chiffres
			$mot="";
			for($i=0; $i<12; $i++)
			{
				$type = mt_rand(0,3);
				if($type==0)
				$mot.= chr(mt_rand(0, 25) + ord('a'));
				else if($type==1)
				$mot.= chr(mt_rand(0, 25) + ord('A'));
				else
				$mot.=  mt_rand(0,9);
			}

			$salt_pre="";
			$salt_suf="";
			for($i=0; $i<3; $i++)
			{
				$salt_pre .=mt_rand(0,9);
				$salt_suf .=rand(0,9);
			}


			$reinit = $bdd->prepare('UPDATE dil_comptes SET salt_prefixe = :prefixe, salt_suffixe = :suffixe , password = :mdp
						WHERE pseudo = :id' );
			$reinit->bindValue('prefixe', $salt_pre, PDO::PARAM_STR);
			$reinit->bindValue('suffixe', $salt_suf, PDO::PARAM_STR);
			$reinit->bindValue('mdp', sha1($salt_pre.$mot.$salt_suf), PDO::PARAM_STR);
			$reinit->bindValue('id', $_POST['pseudo'], PDO::PARAM_STR);
			$reinit ->execute();

			// envoi d'un mail

			$headers ='From: "Dilemnia"<noReply@dilemnia.fr>'."\n";
			$headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n";
			$headers .='Content-Transfer-Encoding: 8bit';

			$message = "
					Suite &agrave; votre demande votre mot de passe pour le site Dilemnia a �t� r�initialis�.
					Votre nouveau mot de passe est $mot. Vous pourrez le modifier quand vous vous connecterez � nouveau.
					
					Ceci est un message automatique, ce n'est pas la peine d'y r&eacute;pondre.
					
					A bient&ocirc;t sur Dilemnia !
				";
			if(mail($_POST['mail'], 'r&eacute;initialisation de votre mot de passe', $message, $headers))
			echo 'Le message a bien &eacute;t&eacute; envoy&eacute;';
			else
			echo 'Le message n\'a pu &ecirc;tre envoy&eacute;';

		}
			
	}

}

else	// affichage du formulaire de r�initialisation de mot de passe
{
	?>


<form action="" method="post">
<p>Votre mot de passe va &ecirc;tre r&eacute;initialis&eacute; et sera
envoy&eacute; &agrave; par mail. <br />
Vous devez indiquer l'adresse mail fournie lors de votre inscription <br />
Vous pourrez ensuite modifier votre mot de passe.<br />
<br />
<br />

<label for="nom"> pseudo </label> <input type="text" id="nom"
	name="pseudo" /> <br />
<br />

<label for="mail"> votre adresse mail : </label> <input type="text"
	id="mail" name="mail" /> <br />
<br />
<label for="captcha">Recopiez le mot : <img
	src="../Generique/captchaMot.php" alt="Captcha" /></label> <input
	type="text" name="captcha" id="captcha" /><br />
<br />
<input type="submit" value="r&eacute;initialiser mon mot de passe"
	name="confirme" /></p>
</form>



	<?php
}
require("../Generique/pied.php");

?>

